//#include <iostream>
//using namespace std;
//
//#define ADD(x,y)  ((x)+(y)) 
//
//inline int Add(int a, int b)
//{
//	return a + b;
//}
//
//int main()
//{
//	cout << ADD(1, 3) << endl;
//	return 0;
//}


#include <iostream>

using namespace std;

//int main()
//{
//	int a = 10;
//	auto b = a;
//	cout << typeid(a).name() << endl;
//	cout << typeid(b).name() << endl;
//	auto* c = &a;
//	cout << typeid(c).name() << endl;
//
//	return 0;
//}

//void test(int arr[])
//{
//	for (auto e : arr)
//	{
//		cout << e << endl;
//	}
//}

//int main()
//{
//	int arr[] = { 1,2,3,4,5,6,7,8,9,10 };
//	for (auto e : arr)
//	{
//		cout << e << " ";
//	}
//
//	for (auto& e : arr)
//	{
//		e++;
//		cout << e << " ";
//	}
//
//	cout << endl;
//	return 0;
//}


void f(int)
{
	cout << "f(int)" << endl;
}
void f(int*)
{
	cout << "f(int*)" << endl;
}
int main()
{
	int* ptr = nullptr;

	f(0);
	f(NULL);
	return 0;
}

